package tdam.androide.web;

import tdam.androide.web.Solicitud;
import android.app.IntentService;
import android.content.Intent;

public class ServicioWebs extends IntentService {

	public static final String ACCION_PROGRESO = "tdam.androide.PROGRESO_SERVICIOWEB";
	public static final String ACCION_FIN = "tdam.androide.FIN_SERVICIOWEB";

	private String usuarioWebLocal;
	private String password;
	private String solicitud;
	private String ipServidor;
	private String puertoServidor;
	private String usuarioWeb;
	private String mensajeWeb;
	private String timeStamp;
	
	public ServicioWebs() {
		super("ServicioRequestResponse");
	}
	
	/**
	*
	*Este metodo hace ...
	*@param ...
	*@return ...
	*@exception ...
	*@throws ...
	*
	*/
	
	@Override
	protected void onHandleIntent(Intent _intent)
	{
		try {
			Intent intent = null;
			usuarioWebLocal = _intent.getStringExtra("usuarioWebLocal");
			password = _intent.getStringExtra("password");
			solicitud = _intent.getStringExtra("solicitud");
			ipServidor = _intent.getStringExtra("ipServidor");
			puertoServidor = _intent.getStringExtra("puertoServidor");
			if (solicitud.equals("register-user.xml")) {
				Solicitud.registrarUsuarioWeb(ServicioWebs.this, usuarioWebLocal, password);
			} else if (solicitud.equals("send-message.xml")) {
				usuarioWeb = _intent.getStringExtra("usuarioWeb");
				mensajeWeb = _intent.getStringExtra("mensajeWeb");
				Solicitud.enviarMensajeWeb(ServicioWebs.this, usuarioWebLocal, password, usuarioWeb, mensajeWeb);
			} else if (solicitud.equals("get-messages.xml")) {
				timeStamp = _intent.getStringExtra("timeStamp");
				Solicitud.consultarMensajesWeb(ServicioWebs.this, usuarioWebLocal, password, timeStamp);
			}
			intent = new Intent(ACCION_PROGRESO);
			intent.putExtra("progreso", 5);
			sendBroadcast(intent);
			Servidor.setSolicitud(ServicioWebs.this, solicitud, ipServidor, puertoServidor);
			intent = new Intent(ACCION_PROGRESO);
			intent.putExtra("progreso", 10);
			sendBroadcast(intent);
			Servidor.enviarSolicitud();
			intent = new Intent(ACCION_PROGRESO);
			intent.putExtra("progreso", 100);
			sendBroadcast(intent);
		} catch (Exception e) {
			Servidor.anularRespuesta();
		}
		Intent intent = new Intent(ACCION_FIN);
		sendBroadcast(intent);
	}
	
}
